home *** CD-ROM | disk | FTP | other *** search
- /*==============================================================================
-
- FICHERO: RATON.C
-
- AUTOR: ANTONIO LADESA JURADO
-
- FECHA: 24/6/94
-
- DESCRIPCION:
-
- Fichero que contiene las funciones externas para el control del ratón.
-
- ==============================================================================*/
-
-
- /*---- MODULOS USADOS --------------------------------------------------------*/
-
- #include <dos.h>
- #include "raton.h"
-
- /*---- CODIFICACION DE LAS FUNCIONES OFRECIDAS -------------------------------*/
-
-
- /*---- FUNCION: extern int RATONiniciar(void) ----------------------------------
-
- Descripción:
-
- Esta función detecta la presencia del ratón y su driver.
-
- Retorno:
-
- - 0 si no existe el driver
- - número de botones si existe
- - -1 si hay error
-
- ---- CODIGO: -----------------------------------------------------------------*/
-
- extern int RATONiniciar(void)
- {
- union REGS inregs,outregs;
-
- inregs.x.ax = 0x0000;
- int86(0x33,&inregs,&outregs);
- /* si no existe driver de raton... */
- if(outregs.x.ax==0)
- return(0);
- /* si existe, devuelve el numero de botones */
- else
- {
- switch(outregs.x.bx)
- {
- /* dos */
- case 0xFFFF:
- case 0x0002:return(2);
- /* tres */
- case 0x0000:return(3);
- /* desconocido */
- default: return(-1);
- }
- }
- }
-
- /*---- FIN FUNCION -----------------------------------------------------------*/
-
-
- /*---- FUNCION: extern void RATONvisible(void) ---------------------------------
-
- Descripción:
-
- Esta función visualiza el cursor del ratón en la pantalla.
-
- ---- CODIGO: -----------------------------------------------------------------*/
-
- extern void RATONvisible(void)
- {
- union REGS inregs,outregs;
-
- inregs.x.ax = 0x0001;
- int86(0x33,&inregs,&outregs);
- }
-
- /*---- FIN FUNCION -----------------------------------------------------------*/
-
-
- /*---- FUNCION: extern void RATONoculto(void) ----------------------------------
-
- Descripción:
-
- Esta función oculta el cursor del ratón en la pantalla.
-
- ---- CODIGO: -----------------------------------------------------------------*/
-
- extern void RATONoculto(void)
- {
- union REGS inregs,outregs;
-
- inregs.x.ax = 0x0002;
- int86(0x33,&inregs,&outregs);
- }
-
- /*---- FIN FUNCION -----------------------------------------------------------*/
-
-
- /*---- FUNCION: extern int RATONestadoPulsar(int boton,int *x,int *y) ----------
-
- Descripción:
-
- Esta función obtiene el estado de los bortones y datos de pulsación.
-
- Parámetros:
-
- int boton : boton del que se desea obtener información
- int *x : coordenada x de la última pulsación
- int *y : coordenada y de la última pulsación
-
- Retorno:
-
- Devuelve el botón pulsado
-
- ---- CODIGO: -----------------------------------------------------------------*/
-
- int RATONestadoPulsar(int boton, int *x, int *y)
- {
- union REGS inregs,outregs;
-
- inregs.x.ax = 0x0005;
- inregs.x.bx = boton;
- int86(0x33,&inregs,&outregs);
- *x = outregs.x.cx;
- *y = outregs.x.dx;
- return(outregs.x.ax);
- }
-
- /*---- FIN FUNCION -----------------------------------------------------------*/
-